﻿using System;
using System.Diagnostics;
using System.Globalization;
using System.Windows.Data;
using MediaAssistant.DAL;

namespace MediaAssistant.Converters
{
    public class AlternativeLocationTextConverter:IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            var movie = value as Movie;
            Debug.WriteLine("Waiting for lock at AlternativeLocationTextConverter");
            lock (DatabaseManager.LockObject)
            {
                Debug.WriteLine("lock at AlternativeLocationTextConverter");
                if (movie != null && movie.AlternativeLocations.Count > 0)
                {
                    var text = string.Format("Alternative Locations ({0})", movie.AlternativeLocations.Count);
                    Debug.WriteLine("unlock at AlternativeLocationTextConverter");
                    return text;
                }
            }
            Debug.WriteLine("unlock at AlternativeLocationTextConverter");
            return string.Empty; 
        }

        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            throw new NotImplementedException();
        }
    }
}